/* DESKTOP */
.maintenance-row {
  max-width: 1280px !important;
  margin: 0 auto !important;
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 0 !important;
  overflow: visible !important;
}

.maintenance-text {
  width: 30% !important;
  flex: 0 0 30% !important;
  position: relative !important;
  z-index: 1 !important;
}

.maintenance-image {
  width: 42% !important;
  flex: 0 0 42% !important;
  position: relative !important;
  z-index: 2 !important;
}

.maintenance-cards {
  width: 28% !important;
  flex: 0 0 28% !important;
  position: relative !important;
  z-index: 10 !important;
  margin-left: -90px !important;
}

/* Card boxes */
.maintenance-cards .elementor-widget-container,
.maintenance-cards .elementor-element {
  box-sizing: border-box !important;
}

/* MOBILE FIX */
@media (max-width: 767px) {

  .maintenance-row {
    display: flex !important;
    flex-direction: column !important;
    flex-wrap: nowrap !important;
    align-items: stretch !important;
    justify-content: flex-start !important;
    width: 100% !important;
    max-width: 100% !important;
    overflow: visible !important;
    padding: 50px 20px !important;
    gap: 28px !important;
  }

  .maintenance-row > * {
    width: 100% !important;
    max-width: 100% !important;
    flex: 0 0 auto !important;
    margin: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    transform: none !important;
    position: relative !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
    bottom: auto !important;
  }

  .maintenance-text,
  .maintenance-image,
  .maintenance-cards {
    width: 100% !important;
    max-width: 100% !important;
    flex: 0 0 auto !important;
    margin: 0 !important;
    transform: none !important;
  }

  .maintenance-image img {
    width: 100% !important;
    height: auto !important;
    display: block !important;
  }

  .maintenance-cards {
    display: flex !important;
    flex-direction: column !important;
    gap: 18px !important;
    margin-left: 0 !important;
  }

  .maintenance-cards > *,
  .maintenance-cards .elementor-element,
  .maintenance-cards .elementor-widget-container {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    margin: 0 !important;
    padding: 22px 20px !important;
  }

  .maintenance-text h2,
  .maintenance-text .elementor-heading-title {
    font-size: 30px !important;
    line-height: 1.18 !important;
    word-break: normal !important;
    overflow-wrap: normal !important;
  }

  .maintenance-text p {
    font-size: 16px !important;
    line-height: 1.6 !important;
    word-break: normal !important;
    overflow-wrap: normal !important;
  }
}

@media (max-width: 767px) {
  .maintenance-text,
  .maintenance-image,
  .maintenance-cards {
    width: 100% !important;
    margin: 0 auto !important;
    transform: none !important;
  }

  .maintenance-cards {
    margin-left: 0 !important;
  }
}

<style>
  .e2e-process {
    --e2e-yellow: #FBBF24;
    --e2e-white: #ffffff;
    --e2e-line: rgba(255, 255, 255, 0.35);

    padding: 80px 24px;
    background: #03152c;
  }

  /* Apply Montserrat to EVERYTHING */
  .e2e-process,
  .e2e-process *,
  .e2e-process *::before,
  .e2e-process *::after {
    box-sizing: border-box;
    font-family: 'Montserrat', sans-serif;
  }

  .e2e-process__container {
    width: min(1400px, 100%);
    margin: 0 auto;
  }

  .e2e-process__title {
    margin: 0 0 52px;
    text-align: center;
    color: var(--e2e-white);
    font-size: clamp(30px, 4vw, 48px);
    font-weight: 700;
    line-height: 1.15;
  }

  .e2e-process__title span {
    color: var(--e2e-yellow);
  }

  .e2e-process__steps {
    display: flex;
    align-items: flex-start;
    justify-content: center;
    width: 100%;
  }

  .e2e-step {
    flex: 0 0 130px;
    text-align: center;
  }

  .e2e-step__icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 72px;
    height: 72px;
    margin: 0 auto 14px;

    border: 2px solid var(--e2e-yellow);
    border-radius: 50%;

    color: var(--e2e-white);

    transition:
      background-color .25s ease,
      transform .25s ease,
      box-shadow .25s ease;
  }

  .e2e-step__icon svg {
    width: 34px;
    height: 34px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.7;
    stroke-linecap: round;
    stroke-linejoin: round;
  }

  .e2e-step:hover .e2e-step__icon {
    background: var(--e2e-yellow);
    color: #03152c;
    transform: translateY(-5px);
    box-shadow: 0 10px 28px rgba(251,191,36,.28);
  }

  .e2e-step__number {
    margin-bottom: 8px;
    color: var(--e2e-yellow);
    font-size: 17px;
    font-weight: 800;
    line-height: 1;
  }

  .e2e-step p {
    margin: 0;
    color: var(--e2e-white);
    font-size: 14px;
    font-weight: 600;
    line-height: 1.45;
  }

  .e2e-connector {
    position: relative;
    flex: 1 1 70px;
    min-width: 28px;
    max-width: 90px;
    height: 72px;
  }

  .e2e-connector::before {
    content: "";
    position: absolute;
    top: 35px;
    left: 8px;
    right: 15px;
    border-top: 2px dashed var(--e2e-line);
  }

  .e2e-connector::after {
    content: "";
    position: absolute;
    top: 31px;
    right: 7px;
    width: 9px;
    height: 9px;
    border-top: 2px solid var(--e2e-yellow);
    border-right: 2px solid var(--e2e-yellow);
    transform: rotate(45deg);
  }

  @media (max-width:1050px){

    .e2e-process__steps{
      display:grid;
      grid-template-columns:repeat(4,minmax(130px,1fr));
      gap:34px 24px;
    }

    .e2e-step{
      flex:initial;
    }

    .e2e-connector{
      display:none;
    }
  }

  @media (max-width:700px){

    .e2e-process{
      padding:60px 20px;
    }

    .e2e-process__title{
      margin-bottom:38px;
    }

    .e2e-process__steps{
      grid-template-columns:repeat(2,minmax(120px,1fr));
      gap:36px 18px;
    }

    .e2e-step__icon{
      width:66px;
      height:66px;
    }

    .e2e-step__icon svg{
      width:31px;
      height:31px;
    }

  }

  @media (max-width:420px){

    .e2e-process__steps{
      grid-template-columns:1fr;
      gap:34px;
    }

    .e2e-step p br{
      display:none;
    }

  }

</style>